<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8"/>
    <title>Test Report</title>
    <link href="assets/style.css" rel="stylesheet" type="text/css"/></head>
  <body onLoad="init()">
    <script>/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */


function toArray(iter) {
    if (iter === null) {
        return null;
    }
    return Array.prototype.slice.call(iter);
}

function find(selector, elem) { // eslint-disable-line no-redeclare
    if (!elem) {
        elem = document;
    }
    return elem.querySelector(selector);
}

function findAll(selector, elem) {
    if (!elem) {
        elem = document;
    }
    return toArray(elem.querySelectorAll(selector));
}

function sortColumn(elem) {
    toggleSortStates(elem);
    const colIndex = toArray(elem.parentNode.childNodes).indexOf(elem);
    let key;
    if (elem.classList.contains('result')) {
        key = keyResult;
    } else if (elem.classList.contains('links')) {
        key = keyLink;
    } else {
        key = keyAlpha;
    }
    sortTable(elem, key(colIndex));
}

function showAllExtras() { // eslint-disable-line no-unused-vars
    findAll('.col-result').forEach(showExtras);
}

function hideAllExtras() { // eslint-disable-line no-unused-vars
    findAll('.col-result').forEach(hideExtras);
}

function showExtras(colresultElem) {
    const extras = colresultElem.parentNode.nextElementSibling;
    const expandcollapse = colresultElem.firstElementChild;
    extras.classList.remove('collapsed');
    expandcollapse.classList.remove('expander');
    expandcollapse.classList.add('collapser');
}

function hideExtras(colresultElem) {
    const extras = colresultElem.parentNode.nextElementSibling;
    const expandcollapse = colresultElem.firstElementChild;
    extras.classList.add('collapsed');
    expandcollapse.classList.remove('collapser');
    expandcollapse.classList.add('expander');
}

function showFilters() {
    const filterItems = document.getElementsByClassName('filter');
    for (let i = 0; i < filterItems.length; i++)
        filterItems[i].hidden = false;
}

function addCollapse() {
    // Add links for show/hide all
    const resulttable = find('table#results-table');
    const showhideall = document.createElement('p');
    showhideall.innerHTML = '<a href="javascript:showAllExtras()">Show all details</a> / ' +
                            '<a href="javascript:hideAllExtras()">Hide all details</a>';
    resulttable.parentElement.insertBefore(showhideall, resulttable);

    // Add show/hide link to each result
    findAll('.col-result').forEach(function(elem) {
        const collapsed = getQueryParameter('collapsed') || 'Passed';
        const extras = elem.parentNode.nextElementSibling;
        const expandcollapse = document.createElement('span');
        if (extras.classList.contains('collapsed')) {
            expandcollapse.classList.add('expander');
        } else if (collapsed.includes(elem.innerHTML)) {
            extras.classList.add('collapsed');
            expandcollapse.classList.add('expander');
        } else {
            expandcollapse.classList.add('collapser');
        }
        elem.appendChild(expandcollapse);

        elem.addEventListener('click', function(event) {
            if (event.currentTarget.parentNode.nextElementSibling.classList.contains('collapsed')) {
                showExtras(event.currentTarget);
            } else {
                hideExtras(event.currentTarget);
            }
        });
    });
}

function getQueryParameter(name) {
    const match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search);
    return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
}

function init () { // eslint-disable-line no-unused-vars
    resetSortHeaders();

    addCollapse();

    showFilters();

    sortColumn(find('.initial-sort'));

    findAll('.sortable').forEach(function(elem) {
        elem.addEventListener('click',
            function() {
                sortColumn(elem);
            }, false);
    });
}

function sortTable(clicked, keyFunc) {
    const rows = findAll('.results-table-row');
    const reversed = !clicked.classList.contains('asc');
    const sortedRows = sort(rows, keyFunc, reversed);
    /* Whole table is removed here because browsers acts much slower
     * when appending existing elements.
     */
    const thead = document.getElementById('results-table-head');
    document.getElementById('results-table').remove();
    const parent = document.createElement('table');
    parent.id = 'results-table';
    parent.appendChild(thead);
    sortedRows.forEach(function(elem) {
        parent.appendChild(elem);
    });
    document.getElementsByTagName('BODY')[0].appendChild(parent);
}

function sort(items, keyFunc, reversed) {
    const sortArray = items.map(function(item, i) {
        return [keyFunc(item), i];
    });

    sortArray.sort(function(a, b) {
        const keyA = a[0];
        const keyB = b[0];

        if (keyA == keyB) return 0;

        if (reversed) {
            return keyA < keyB ? 1 : -1;
        } else {
            return keyA > keyB ? 1 : -1;
        }
    });

    return sortArray.map(function(item) {
        const index = item[1];
        return items[index];
    });
}

function keyAlpha(colIndex) {
    return function(elem) {
        return elem.childNodes[1].childNodes[colIndex].firstChild.data.toLowerCase();
    };
}

function keyLink(colIndex) {
    return function(elem) {
        const dataCell = elem.childNodes[1].childNodes[colIndex].firstChild;
        return dataCell == null ? '' : dataCell.innerText.toLowerCase();
    };
}

function keyResult(colIndex) {
    return function(elem) {
        const strings = ['Error', 'Failed', 'Rerun', 'XFailed', 'XPassed',
            'Skipped', 'Passed'];
        return strings.indexOf(elem.childNodes[1].childNodes[colIndex].firstChild.data);
    };
}

function resetSortHeaders() {
    findAll('.sort-icon').forEach(function(elem) {
        elem.parentNode.removeChild(elem);
    });
    findAll('.sortable').forEach(function(elem) {
        const icon = document.createElement('div');
        icon.className = 'sort-icon';
        icon.textContent = 'vvv';
        elem.insertBefore(icon, elem.firstChild);
        elem.classList.remove('desc', 'active');
        elem.classList.add('asc', 'inactive');
    });
}

function toggleSortStates(elem) {
    //if active, toggle between asc and desc
    if (elem.classList.contains('active')) {
        elem.classList.toggle('asc');
        elem.classList.toggle('desc');
    }

    //if inactive, reset all other functions and add ascending active
    if (elem.classList.contains('inactive')) {
        resetSortHeaders();
        elem.classList.remove('inactive');
        elem.classList.add('active');
    }
}

function isAllRowsHidden(value) {
    return value.hidden == false;
}

function filterTable(elem) { // eslint-disable-line no-unused-vars
    const outcomeAtt = 'data-test-result';
    const outcome = elem.getAttribute(outcomeAtt);
    const classOutcome = outcome + ' results-table-row';
    const outcomeRows = document.getElementsByClassName(classOutcome);

    for(let i = 0; i < outcomeRows.length; i++){
        outcomeRows[i].hidden = !elem.checked;
    }

    const rows = findAll('.results-table-row').filter(isAllRowsHidden);
    const allRowsHidden = rows.length == 0 ? true : false;
    const notFoundMessage = document.getElementById('not-found-message');
    notFoundMessage.hidden = !allRowsHidden;
}
</script>
    <h1>20210317_17report.html</h1>
    <p>Report generated on 17-Mar-2021 at 17:59:41 by <a href="https://pypi.python.org/pypi/pytest-html">pytest-html</a> v3.1.1</p>
    <h2>Environment</h2>
    <table id="environment">
      <tr>
        <td>JAVA_HOME</td>
        <td>C:\Program Files\Java\jdk1.8.0_201</td></tr>
      <tr>
        <td>Packages</td>
        <td>{"pluggy": "0.13.1", "py": "1.10.0", "pytest": "6.2.2"}</td></tr>
      <tr>
        <td>Platform</td>
        <td>Windows-10-10.0.18362-SP0</td></tr>
      <tr>
        <td>Plugins</td>
        <td>{"html": "3.1.1", "metadata": "1.11.0"}</td></tr>
      <tr>
        <td>Python</td>
        <td>3.6.7</td></tr></table>
    <h2>Summary</h2>
    <p>18 tests ran in 2.57 seconds. </p>
    <p class="filter" hidden="true">(Un)check the boxes to filter the results.</p><input checked="true" class="filter" data-test-result="passed" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="passed">0 passed</span>, <input checked="true" class="filter" data-test-result="skipped" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="skipped">0 skipped</span>, <input checked="true" class="filter" data-test-result="failed" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="failed">18 failed</span>, <input checked="true" class="filter" data-test-result="error" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="error">0 errors</span>, <input checked="true" class="filter" data-test-result="xfailed" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="xfailed">0 expected failures</span>, <input checked="true" class="filter" data-test-result="xpassed" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="xpassed">0 unexpected passes</span>
    <h2>Results</h2>
    <table id="results-table">
      <thead id="results-table-head">
        <tr>
          <th class="sortable result initial-sort" col="result">Result</th>
          <th>模块</th>
          <th>状态码</th>
          <th>url</th>
          <th>响应参数</th>
          <th class="json">请求参数</th>
          <th class="sortable" col="name">Test</th>
          <th class="sortable" col="duration">Duration</th></tr>
        <tr hidden="true" id="not-found-message">
          <th colspan="8">No results found. Try to check the filters</th></tr></thead>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>None</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api.py::test_api</td>
          <td class="col-duration">0.37</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">@pytest.mark.发行计划<br/>    def test_api():<br/>        url = &quot;https://testapi.huxin315.com//cloud-service/api/merchant/myProject&quot;<br/>        headers = {  # 设置http头部信息<br/>            &#x27;Host&#x27;: &#x27;testapi.huxin315.com&#x27;,<br/>            &#x27;Authorization&#x27;: &#x27;eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJleHAiOjE3MDIyODc4NTMsInVzZXJJZCI6ImJtZnk1eGFhSU1uUkdQa3dvR0VXTkNITEhmeFkyUW8wL2sxN0NwWGRLQ3dzbmc3RVhhaHdBbWlnUG5FOWl5VkF2YTBrR2NpeVQ0VjJEYTh2U20rQndzc2lxeGhQNHZXT3RnYys2VnR4Wng5TXV1a3lua29WK3FoOWhEaklGSVN3dEF0T29EL1FIV04xTGV4QnhlTForbjhEaWI1NlZ5akhGUkwzZDhEU2hlST0iLCJpYXQiOjE2MTU5NzQyNTN9.vi-vY0wEVAll1MWTZ4A5G6KKkDbnEBuDB2qZkyGc6fBcq8CzUIQiK7H5WspcQOESVYV-od9a-6-BVxGPgJDGd5zreiT--dUWoOkZ7TCq8pShIaOj1nVafKBWkMEiT5UdO4Cojmb9P0Svnmp7KltZbx43fINH4cMgBDnpGZnpcjIS_u-9vQd3ld76a4cR_adrOmr8zcJ9wcndQetaqdNmQCfbjIRqMaEPzzP2HrvfIrrK7wbitrx7F0JA6zbAEbpaR2Oa0qj-_CFQjYeNYiST7vG0Dl7LhWOJHSST5hAl8DG5HXKoBK8s1CAt1TYWcfmyi-6sZBAN_Z4ti7S5yqc-Wg&#x27;,<br/>            &#x27;Content-Type&#x27;: &#x27;application/json;charset=UTF-8&#x27;<br/>        }<br/>        params={&quot;pageNum&quot;:1}<br/>        send_request=interface(url,headers,params)<br/>        response=send_request.send_request()<br/>    <br/>        response_text=response.text<br/>        response_json=json.loads(response_text)<br/>        api_val.reponse = response_text<br/>        api_val.statue_code = response.status_code<br/>        api_val.url=url<br/>        api_val.request=params<br/>        print(&quot;@@@@@@@@@@@@@@@@@@@&quot;,api_val.url)<br/>    <br/>    <br/>    <br/>        code = response_json[&quot;code&quot;]<br/>        code_str=str(code)<br/>    <br/>        assert response.status_code == 200<br/>&gt;       assert code_str != &#x27;0&#x27;<br/><span class="error">E       AssertionError: assert &#x27;0&#x27; != &#x27;0&#x27;</span><br/><br/>test_dir\test_api.py:34: AssertionError<br/> ------------------------------Captured stdout call------------------------------ <br/>@@@@@@@@@@@@@@@@@@@ https://testapi.huxin315.com//cloud-service/api/merchant/myProject
<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan0</td>
          <td class="col-duration">0.18</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:29: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan1</td>
          <td class="col-duration">0.09</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:61: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan2</td>
          <td class="col-duration">0.12</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:93: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan3</td>
          <td class="col-duration">0.11</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:125: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan4</td>
          <td class="col-duration">0.09</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:157: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan5</td>
          <td class="col-duration">0.09</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:189: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan6</td>
          <td class="col-duration">0.09</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:221: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan7</td>
          <td class="col-duration">0.09</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:253: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan8</td>
          <td class="col-duration">0.11</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:285: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan9</td>
          <td class="col-duration">0.10</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:317: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan10</td>
          <td class="col-duration">0.10</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:349: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan11</td>
          <td class="col-duration">0.11</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:381: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan12</td>
          <td class="col-duration">0.10</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:413: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan13</td>
          <td class="col-duration">0.11</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:445: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan14</td>
          <td class="col-duration">0.12</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:477: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan15</td>
          <td class="col-duration">0.11</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:509: AssertionError<br/></div></td></tr></tbody>
      <tbody class="failed results-table-row">
        <tr>
          <td class="col-result">Failed</td>
          <th>发行计划</th>
          <th>0</th>
          <th></th>
          <th></th>
          <th></th>
          <td class="col-name">test_dir/test_api2.py::test_test_issuance_plan16</td>
          <td class="col-duration">0.09</td>
          <td class="col-links"></td></tr>
        <tr>
          <td class="extra" colspan="9">
            <div class="log">&gt;   ???<br/><span class="error">E   assert 401 == 200</span><br/><span class="error">E    +  where 401 = &lt;Response [401]&gt;.status_code</span><br/><br/>D:\PycharmProjects\mitmproxyProject\pytest_test\test_dir\test_api2.py:541: AssertionError<br/></div></td></tr></tbody></table></body></html>